package com.example.demo2;

/**
 * 单例模式 - 懒汉式
 * 优点:只有使用的时候 才会加载到 内存中 不使用的话 就不会被创建
 * 缺点: 如果是多线程的情况下 线程不安全 会导致 创建了多个
 */
public class SingletonDemo2 {

    private static SingletonDemo2 singletonDemo2;

    private SingletonDemo2() {

    }

    public static SingletonDemo2 getInstance() {
        if (singletonDemo2 == null) {
            //并发的情况下 会导致 多个线程到这里  但是执行权被强占了 就会出现 new两次
            singletonDemo2 = new SingletonDemo2();
        }
        return singletonDemo2;
    }

}
